1. Technical Field
The present disclosure relates generally to securing digital information. More specifically, one or more embodiments of the present disclosure relate to systems and methods that transform and securely pass digital context information between servers and client devices.
2. Background and Relevant Art
It is becoming increasingly common for individuals and businesses to provide and store information on the cloud (i.e., via remote, third-party servers). Indeed, with the recent proliferation of web-enabled devices, such as smartphones, tablets, laptops, and personal computers, individuals increasingly store photos, documents, purchases, preferences, passwords, and/or software on third-party servers. For example, it is now common for individuals to capture digital media (such as photographs or video) via smartphones or other web-enabled devices, and store the digital media on one or more cloud-based systems hosted by a third-party service provider.
Although it is growing increasingly common to store and access information on third-party servers, many computing applications still offer (or require) specialized software that resides on individual computing devices. For instance, although an individual may choose to store photographs on the cloud, many sophisticated photo-editing applications operate with some specialized software components downloaded on the client device. Accordingly, an individual may download photographs and/or software onto a client device, even though the photographs (and even some portion of the photo-editing software) may reside on third party servers.
In many instances, the increasing overlap between general web-based applications (e.g., web-browsers) and more particularized native applications (e.g., photo-editing applications or other specialized applications) can lead to repetition, wasted time, and user frustration. For instance, a user may provide information to a third-party server while utilizing a web-browser and may again have to provide the same information to corresponding native application. Similarly, a user can log on to a website via a web browser, download a digital file to a local computing device, and then have to log on again to access the digital file on software stored on the local computing device. Furthermore, a user can provide contact information (e.g., name, address, or phone number) to an online commercial site accessed via a web browser, and, upon downloading a native application associated with the same site, the user may have to re-enter the same contact information.
In one existing solution, some common information systems seek to provide secure information from third-party servers to specialized native applications, but these systems introduce their own problems. For instance, some common information systems utilize browser cookies (i.e., data packets that store information provided via a web browser) to pass information along to local applications on a client device. Although such an approach allows local applications on a client device to access information provided via a web browser, storing personal information in web cookies is not secure. Moreover, systems that rely upon browser cookies rest on the varied (and unreliable) capabilities and settings of individual web browsers.
Similarly, some common systems rely on browser plugins to pass information to local applications. These systems also introduce at least two major problems. First, the plugin has to be installed in the web browser to operate. Accordingly, users that do not have the plug in, or that refuse to install the plug in, cannot take advantage of plugin-based information. Second, some browsers refuse to support such plugins.
Other common information systems embed information within a file before starting a download. Embedding such information, however, breaks any digital signature associated with the file. Accordingly, common information systems that embed information within a file require complex and expensive dynamic signing infrastructures that can apply a signature to a file for each individual download after embedding information within the file. Thus, although this approach may result in decreased user-frustration, it results in increased cost and complexity to service providers.
These and other problems exist with regard to passing context information from web browsers to native applications on client devices via one or more servers using conventional systems and methods.